package com.schoolcloud.social.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.ToString;

/**
 * 私信表
 * @TableName private_message
 */
@TableName(value ="private_message")
@Data
@ToString
public class PrivateMessage implements Serializable {
    /**
     *
     */
    @TableId(type = IdType.AUTO)
    private Integer messageId;

    /**
     * 会话id
     */
    private Integer conversationId;

    /**
     * 发送者id
     */
    private Integer senderId;

    /**
     * 接收者
     */
    private Integer receiverId;

    /**
     * 内容类型（文本，图片，视频，文件）
     */
    private String contentType;

    /**
     * 内容(可以是一个json)
     */
    private String content;

    private String action;

    /**
     * 是否阅读
     */
    private Integer isRead;

    /**
     * 阅读时间
     */
    private LocalDateTime readTime;

    /**
     * 状态（正常，撤回）
     */
    private Integer status;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 消息类型（私信private，通知notice等）
     */
    private String type;

    @Serial
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
